home *** CD-ROM | disk | FTP | other *** search
- realloc_fp_data(n)
- int n;
- {
- int i,j,*it;
- double *vt,**mt,***tmt;
- extern int stop,var_dim,*fp_period;
- extern double **fp_x,***fp_eval,***fp_evec,*fp_xerr;
-
- it = (int *) realloc(fp_period,(unsigned) n * sizeof(int));
- if (!it){
- system_mess_proc(1,"fp allocation failure!");
- stop = 1;
- return;
- }
- fp_period = it;
- vt = (double *) realloc(fp_xerr,(unsigned) n * sizeof(double));
- if (!vt){
- system_mess_proc(1,"fp allocation failure!");
- stop = 1;
- return;
- }
- fp_xerr = vt;
-
- mt = (double **) malloc((unsigned) sizeof(double *) * var_dim);
- /* reallocate memory for coords */
- for(i=0;i<var_dim;i++){
- mt[i] = (double *) realloc(fp_x[i],(unsigned) sizeof(double) * n);
- if(!mt[i]){
- system_mess_proc(1,"realloc_memory: m allocation failure!!!");
- stop=1;
- return;
- }
- }
- fp_x = mt;
- free(mt);
-
- tmt = (double ***) malloc((unsigned) sizeof(double **) * var_dim);
- for(i=0;i<var_dim;i++){
- tmt[i] = (double **) malloc((unsigned) sizeof(double *) * 2);
- if(!tmt[i]){
- system_mess_proc(1,"realloc_memory: m allocation failure!!!");
- stop=1;
- return;
- }
- for(j=0;j<2;j++){
- tmt[i][j] = (double *) realloc(fp_eval[i][j],(unsigned) sizeof(double) * n);
- if(!tmt[i][j]){
- system_mess_proc(1,"realloc_memory: m allocation failure!!!");
- stop=1;
- return;
- }
- }
- }
- fp_eval = tmt;
- free(tmt);
- tmt = (double ***) malloc((unsigned) sizeof(double **) * var_dim);
- for(i=0;i<var_dim;i++){
- tmt[i] = (double **) malloc((unsigned) sizeof(double *) * var_dim);
- if(!tmt[i]){
- system_mess_proc(1,"realloc_memory: m allocation failure!!!");
- stop=1;
- return;
- }
- for(j=0;j<var_dim;j++){
- tmt[i][j] = (double *) realloc(fp_evec[i][j],(unsigned) sizeof(double) * n);
- if(!tmt[i][j]){
- system_mess_proc(1,"realloc_memory: m allocation failure!!!");
- stop=1;
- return;
- }
- }
- }
- fp_eval = tmt;
- free(tmt);
- }
-